The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
Web sites are comprised of one or more web pages. Each web page may include instructions that define a visual user interface to display to a user using a client computer.
Web site administrators may release a new version of a web page that is intended to improve functionality, but not intended to visually break the appearance of the web page. Visually breaking a web page may mean visually changing the web page in a way that was not intended. For example, an administrator of a web site may include a new library in a page. The administrator may intend for the new library to cause the web page to stream data rather than poll for data, but not intend the library to cause the client computer to hide a logo. If a browser on a client computer executes the instructions in the web page, which includes the new library, and in response does not display the logo, then the web page is considered to be “broken” or “visually broken”. Alternatively, a computer system may modify a web page for purposes of improving security aspects of the page or resistance to attack by malicious code, and the modifications may inadvertently cause the web page to be broken or visually broken.
Automatically determining whether a new version of a web page visually breaks the web page may be difficult. Simply comparing a before image of the web page to an after image of the web page may cause false errors. For example, a web page may include instructions to retrieve and display a different ad each time the page is presented. If an administrator causes a computer to compare a before image with a first ad to an after image with a second ad, then the administrator may receive a false error. Even though the ad in the before image may be different than the ad in the after image, changing the ad does not visually break the page because the administrator intends for the ad to change.
A web page may be displayed differently based on many factors. For example, an administrator may include instructions in a web page, which when executed by a browser, renders the web page differently based on the size of the browser window on a display. Also for example, a web page that displays news may include instructions, which when executed by a browser, render different news articles over time. Thus, automatically determining whether a web page is visually broken may be difficult.